Computer-Aided Design (CAD) software enables the user to construct and manipulate complex three-dimensional (3D) models representative of real-world physical objects. A number of CAD systems and programs are offered in the marketplace that construct 3D models and enable engineers to design parts and assemblies, such as the product provided by the Dassault Systemes SolidWorks Corporation under the trademark SOLIDWORKS.
A number of different modeling techniques can be used to create a 3D model. Solid modeling is one such technique. Solid modeling provides topological 3D models where the 3D model is a collection of interconnected topological entities such as vertices, edges, and faces. The topological entities have corresponding supporting geometrical entities such as points, trimmed curves, and trimmed surfaces. The trimmed surfaces correspond to the topological faces bounded by the edges.
Another modeling technique is parametric modeling. CAD systems may combine solid modeling and parametric modeling techniques. Parametric modeling techniques can be used to define various parameters for different features and components of a model, and to define relationships between those features and components based on relationships between the various parameters. The parametric nature of a CAD system enables constraints (e.g. relationships between features) to influence the geometric representation of the model.
A design engineer is a typical user of a 3D CAD system. The design engineer designs physical and aesthetic aspects of 3D models and is skilled in 3D modeling techniques. In a 3D model, the design engineer creates parts consisting of features typically resulting from operations such as a sweep, a revolve, an extrusion and so on. Other features may be applied to a part. For example, a fillet feature when applied to a part rounds one or more edges, a chamfer feature creates a beveled edge, and a draft feature adds an angle to one or more faces in a part.
The design engineer may assemble the parts into a subassembly, and a subassembly may also consist of other subassemblies. An assembly is designed using parts and subassemblies. Parts and subassemblies are herein generically referred to as “components” of the 3D model or simply a “model component” or an “assembly component.”
A CAD assembly can have components with many degrees of freedom for modeling movement and motion. In turn, the CAD assembly may model a mechanical mechanism or device having many different positions and a range of motion. To better understand how the mechanical device achieves (and thus how the CAD model should achieve and maintain) different positions through a range of motion, the design engineer may use a motion study. Animation is one such motion study in CAD systems.
Animation typically animates the motion of model assemblies by adding motors to drive the motion of one or more parts or components of an assembly. The design engineer specifies the positions of assembly components at various times using set key points. The animation operation uses interpolation to define the motion of assembly components between key points, and thus to specify point-to-point motion of parts and components in assemblies.
Other motion studies in CAD systems include physics-based simulations. That is, in addition to illustrating motion, a simulation takes into account physical aspects such as mass, inertia, and material make-up of a model and its components.
A timeline user interface is used to implement most animations and simulations of CAD motion studies. The timeline displays the times and types of events in the animation or simulation. Key points are used in the timeline to represent a beginning or end of a change in animation position or other visual attributes of model components at a given time. Thus each key point corresponds to respective defined assembly component positions, visual properties and simulation element states. A keyframe is the timeline area or portion of the timeline that lies between key points and can be any length of time. The keyframe defines the timeframe in which assembly component motion or visual property changes take place. As the design engineer: (i) positions the indication of current time (called the time bar) in the timeline user interface, (ii) moves model components in a graphics area of the modeling interface, (iii) adds simulation elements, or (iv) changes the visual properties, the timeline displays changes using key points and change bars. The change bars are horizontal bars connecting the key points. Each change bar indicates a change between key points and can be color-coded to visually identify the model component and type of change.
The timeline interface and keyframe approach are not intuitive or well understood. To further compound matters, motion studies (i.e. animation or simulation of the model motion) do not change an assembly of a 3D CAD model or the properties of the assembly. Instead motion studies simulate and animate the motion that the design engineer prescribes for the 3D model. However a certain property of CAD model components called “mates” can be used to restrict the motion of the components in an assembly when modeling motion in a CAD system.
In a CAD model, the mates property creates geometric relationships (such as coincident, perpendicular, tangent, and so on) between assembly components. Each mate type is valid for specific geometry combinations. As the design engineer adds mates to model components, he or she defines the allowable directions of linear or rotational motion of the components. In motion studies (i.e. animations and simulations), mates are solved together at the same time, and thus are solved as a system. A mate can be suppressed in a motion study. In this way, the design engineer can have a component move within its degrees of freedom, visualizing the CAD assembly's behavior.